package pers.cocoadel.springcloud.controller;

import com.alibaba.csp.sentinel.annotation.SentinelResource;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RestController;

/**
 * @author rwby
 */
@RestController
public class UserController
{

    @Value("${spring.application.name}")
    private String appName;

    // 1. 需要先在 pom 文件引入 spring-boot-starter-aop 依赖
// SentinelResourceAspect 会自动注册，无需再自行注册

    // 2. 在业务方法使用注解作为埋点。
    @GetMapping("/get/{id}")
    @SentinelResource(value = "get/{id}")
    public String getUserById(@PathVariable("id") String id)
    {
        return appName + " id: " + id;
    }
}
